
Nombre:
ArtGem
Versión:
1.0
Editor:
RL Vision
Víctima:
ARTGEM.EXE
Serial guardado en:
HKEY_CURRENT_USER\Software\RL Vision\ArtGem\
Herramientas:
W32Dasm
Hacker’s View
Cerebro
Cracker:
LW2000
Tutorial:
número 56
Renuncia: Este tutorial tiene una finalidad únicamente
educativa. No asumo ninguna responsabilidad por el mal uso de éste material.
1.
Bien, ¡este tutorial es muy sencillo!
Vamos al menú ‘Help’ y hacemos click en ‘Register’.
2.
Introducimos ‘LW2000’ como Name, ‘CiA’
como Company y ‘132099’ como KeyCode.
3.
Hacemos click en ‘Ok’. ¡Boooom! ‘Invalid
Code’.
4.
¡Hmmmm! ¡Un ‘bug’! ¡Sí, nos hemos encontrado
con un ‘bug’! ¡Vamos a corregir esto!
5.
Abrimos ‘ARTGEM.EXE’ en W32Dasm y vamos
a las String Data References (SDR). Hacemos doble click en nuestra cadena,
con lo cual obtendremos éste trozo de código:
* Referenced by a (U)nconditional or (C)onditional
Jump at Address:
|:00403268(C) <---
here we go
|
:004032F1 8B0DF4204600 mov ecx, dword ptr [004620F4]
:004032F7 6A10 push 00000010
* Possible StringData Ref from Data Obj ->"ArtGem"
|
:004032F9 68A8814500 push 004581A8
* Possible StringData Ref from Data Obj ->"Invalid
Key!"
|
:004032FE 68D4814500 push 004581D4
:00403303 51 push ecx
6.
Vamos a la dirección ‘00403268’ y echamos
un vistazo al código:
:00403248 8D542444 lea edx, dword ptr [esp+44]
:0040324C 6A10 push
00000010
:0040324E 8D442420 lea eax, dword ptr [esp+20]
:00403252 52 push edx
:00403253 50 push eax
:00403254 E827810400 call 0044B380
:00403259 8D4C2428 lea ecx, dword ptr [esp+28]
:0040325D 51 push ecx
:0040325E E89DDDFFFF call 00401000 >Rutima
de comprobación
:00403263 83C410 add esp, 00000010
:00403266 85C0 test eax, eax >Comprobación
:00403268 0F8483000000 je 004032F1 >¡Bad
Boy!
:0040326E 8D7C2444 lea edi, dword ptr [esp+44]
:00403272 83C9FF or ecx, FFFFFFFF
:00403275 33C0 xor eax, eax
7.
En la posición ‘0040325E’ tenemos un
‘CALL’ que es donde se comprueba el Serial. Si el Serial es correcto entonces
‘EAX = 1’ en caso contrario ‘EAX = 0’. Así que ¿qué podemos hacer? Vamos a
la instrucción ‘CALL’ y vemos que el offset es ‘1000h’. Entonces abrimos el
fichero con HIEW y modificamos el código.
8.
Dentro de HIEW pulsamo F5 y vamos al
offset ‘1000h’, después pulsamos F3 para activar el modo Edit. Con F2 podremos
introducir comandos ASM. Ahora escribimos:
mov eax,1 [Intro]
ret [Intro]
9.
Pulsamos ‘Esc’ para cerrar la ventana
de edición. Y guardamos nuestro trabajo. ¿Qué hemos hecho? Hemos movido un
‘1’ al registro ‘EAX’ y hemos salido del ‘CALL’. Por lo tanto cualquier Serial
será correcto. ¡¡¡Pruébelo!!!
¡Enhorabuena! ¡Ya es usted un usuario registrado!
¡Se acabó! Fácil, ¿no? ¿Algún comentario? Envíeme
un email a LW2000@gmx.net.
o vaya a http://www.LW2000.cjb.net
Gracia a tKC por sus tutoriales. Empecé leyendo su
primer tutorial y todavía sigo leyéndolos.
Traducción de: MeGaBiTe